﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Ingebet.Repository.Contract
{
    public interface IRepository<T, EntityKey>
    {
        T GetByID(EntityKey id);

        IList<T> GetAll();

        void Insert(T o);

        void Insert(IList<T> o);

        void InsertOrUpdate(T o);

        void InsertOrUpdate(IList<T> o);

        void Delete(T o);

        void Delete(IList<T> o);

        void Update(T o);

        void Update(IList<T> o);
    }
}